package br.ufrj.dcc.ad.servidor;

public abstract class Servidor {
	protected final static int POTENCIA_ON = 240;
	protected final static int POTENCIA_OFF = 0;
	protected final static int POTENCIA_IDLE = 180;
	
	protected double periodoOcupado;
	protected double periodoOcioso;

	public Servidor() {
		this.periodoOcupado = 0.0;
		this.periodoOcioso = 0.0;
	}
	
	public void adicionaPeriodoOcupado(double tempo){
		this.periodoOcupado += tempo;
	}
	
	public void adicionaPeriodoOcioso(double tempo){
		this.periodoOcioso += tempo;
	}
	
	public abstract double getConsumoEnergiaOcioso();	
	public abstract double getConsumoEnergiaOcupado();
	public abstract double getTempoSetup();

	public double getConsumoEnergiaTotal() {
		return this.getConsumoEnergiaOcioso() + this.getConsumoEnergiaOcupado();
	}

	public double getPeriodoOcioso() {
		return periodoOcioso;
	}

	public void setPeriodoOcioso(double periodoOcioso) {
		this.periodoOcioso = periodoOcioso;
	}
	
	
	
}
